package com.xwh.shop.user.service.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;

@Configuration
public class RestTemplateConfig {

    /*
    * 关于 @Bean:
    *  @Bean 注解
    * 作用：标记一个方法，该方法会返回一个对象，这个对象要被注册到Spring的应用上下文中（即Spring容器）。
    * 也就是说，这个方法的返回值将成为一个Bean，可以在其他地方通过依赖注入（比如使用@Autowired或@Resource）来使用。
      说明：在Spring中，Bean是由Spring容器管理的对象。它们可以是服务、组件、数据源、工具类（如这里的RestTemplate）等。
    * */
    @Bean
    public RestTemplate getRestTemplate(){
        /*
        * RestTemplate类的作用：
        * 1：HTTP 请求发送器
        * 用于发送 GET/POST/PUT/DELETE 等 HTTP 请求在微信登录流程中负责与微信服务器通信
        * 2.API 调用抽象层
        * 封装了复杂的 HTTP 连接细节
        * 提供简单的方法调用接口（如 getForObject()）
        *
        * 用于MemberServiceImpl
         * */
        return new RestTemplate();
    }
}
